草庐IT

php exec 和 shell_exec 不工作

全部标签

windows - 无法在 Cygwin 中将 shell 脚本作为 KornShell 脚本执行

我很少接触shell脚本,我们有另一个部门在写它们,所以我对编写它们有了解,但没有经验。然而,它们对我的问题都显得毫无用处。我正在尝试使用Cygwin在基于Windows的机器上执行一些KornShell(ksh)脚本-我们使用这些脚本来启动我们的OracleWebLogic服务器,现在它根本不会执行。我曾经能够在我的旧机器上很好地执行这些完全相同的脚本。现在我已经将范围缩小到“魔数(MagicNumber)”或脚本开头指定脚本解释器路径的任何内容:即:#!/bin/ksh如果我将其更改为作为简单的bash执行,它会起作用,即:#!/bin/sh我检查了为cygwin安装的包-现在我安

windows - 检查注册表值是否等于 1 无法正常工作

我将一些PowerShell拼凑在一起以远程查询存储在.csv文件中的机器列表以获取注册表值。如果注册表项的值等于“1”,则脚本应使用机器名称作为文本文件的名称来创建一个文本文件。一切正常。该脚本运行愉快,没有任何错误。问题是,当我返回并远程检查目标注册表值时,我发现该值不是1。脚本只是为.csv中的每一行创建一个文件。我做错了什么?编辑***我发现一个问题我在注册表路径的$key变量中有错字。2013年7月17日下午2:21$File=Import-Csv'c:\temp\machines.csv'foreach($linein$file){$machinename=$line.ma

java - SWT 禁用 shell 全屏模式

有没有办法在SWT中禁用shell的全屏模式?newShell(SWT.TOOL);SWT.TOOL确实隐藏了一个全屏按钮,但它也隐藏了一个应用程序图标。此外,您仍然可以双击窗口的顶部以全屏显示或在窗口中使用全屏滑动>=7 最佳答案 您可以使用这些样式位:finalShellshell=newShell(display,SWT.CLOSE|SWT.TITLE|SWT.MIN);但是,您将无法再通过拖动边角来调整外壳的大小。如果您添加SWT.RESIZE,它会调整大小,但会再次最大化。 关

c++ - 更改当前工作目录 VS13?

如本post所述我调试SDL程序时的工作目录是相对于.vcproj而不是.exe(它应该是IMO)所以我想知道我是否可以更改它,所以当我按F5时,路径将相对于.exe而不是.vcproj?我目前使用的(相对简单的)解决方法是简单地打开文件夹并从那里启动程序,但我更愿意直接按F5。 最佳答案 对您问题的简单回答是,您可以将调试配置属性中的工作目录选项设置为$(TargetDir)。默认设置为$(ProjectDir),默认情况下项目目录不是可执行文件的输出位置。但是,我不建议您选择此选项,如下所述。您试图以错误的方式解决这个问题。您的

windows - Visual Studio 中的 Windows 内核调试器如何工作?

我最近开始尝试为Windows开发文件系统驱动程序,并开始研究VisualStudio2013中提供的内核调试器。内核开发器是一款了不起的软件——它能够调试实时内核(断点、堆栈跟踪、内存访问和所有内容)通过RS232连接连接的远程机器。我不明白的一件事是——如何通过RS232端口进行这种调试?我对内核的理解是,它是直接针对硬件组件的软件,是系统中最底层的软件之一。某些东西怎么能在内核“之上”运行,从而允许远程调试内核本身?内核如何可以纯粹在软件中进行调试?不干扰响应机器本身调试请求的软件(可能在内核下运行)? 最佳答案 内核调试器既

windows - 批处理文件在 cd 命令后获取当前工作目录

当我运行位于C:\some\dir中的批处理文件时,我知道我可以使用%cd%和%~dp0获取批处理文件本身的路径和描述的其他信息here.但是在批处理文件执行了几个cd命令后,我还没有设法获得“当前工作目录”。例如:批处理文件在C:\some\dir批处理文件执行cdsub和之后的cdsub2如何获取那个文件夹的路径?它应该产生C:\some\dir\sub\sub2并且在命令行中手动执行上述所有操作时相当于pwd命令!上面的任何命令我都不走运!它说here%cd%变量应该在使用cd命令后更新,但我总是得到C:\some\dir作为输出。编辑linktoashortversionofm

linux - cygwin 二进制 exec 格式错误

我有一个脚本文件,可以使用Cygwin在Windows中运行。当我尝试使用此文件时出现以下错误-bash:/sigdet/filename:cannotexecutebinaryfile:Execformaterror.sigdet是我拥有脚本的Cygwin目录中的文件夹。Rawdata是包含脚本应该分析的原始数据文件的目录的名称。为了尝试解决这个问题,我更改了文件权限,我已经检查以确保它在64位机器上并且脚本似乎是在64位机器上编译的。完成这些步骤后,我不知道还有什么问题。以下是我输入的命令:我首先像这样更改了目录:$cd/sigdet/然后我运行了支持工作的脚本:$/sigdet/

即使在 Windows 后台运行命令后,PHP 脚本仍卡在 exec 上

我想要一个php脚本,我可以从中执行一个程序,如果它没有在2秒内完成执行则终止它。我正在使用Windows。我尝试了以下代码:exec("start/Bprogram.exe");sleep(2);exec('taskkill/F/IM"program.exe"');这似乎不起作用,因为只要program.exe未完成执行,脚本就会卡在第一个exec语句上。我不知道如何解决这个问题。 最佳答案 你是用phpcli(commandline)做的吗??打开commandpromptasadministrator.为了不被等待程序阻塞cl

Windows 中的 Ruby 多行反引号 exec 不起作用

这就是我正在做的:cmd="echofoo\nechobar"out=`#{cmd}`在Linux中我有“foo\nbar”。在Windows中我有“foo”。这是为什么?如何修复? 最佳答案 似乎cmd.exe读取到换行符(\n)并忽略剩余部分。您可以使用&&来组合命令:cmd="echofoo&&echobar"out=`#{cmd}`#=>"foo\nbar\n" 关于Windows中的Ruby多行反引号exec不起作用,我们在StackOverflow上找到一个类似的问题:

windows - 如果在管理员模式下运行,批处理文件的工作方式会有所不同

我一直在尝试创建用于转换目录中文件的批处理文件。该目录是通过此代码给出的:@echooffrem//settinginputdirectory:input1set/p"inputdir=Inputdirectory:"rem//ifinputisinvalid,promptagainifnotexist"%inputdir%"(echoDirectorydoesnotexist.echo"%inputdir%"gotoinput1)它运作良好-正常。但是,因为我后来考虑使用环境变量,所以我也尝试以管理员身份运行它。然而-问题是,当我正常运行它时,它会占用目录,脚本继续没有问题。当我在管